Skip to content

Add performance skills: measurement + React/Redux anti-pattern reviews#43

Open
MajorLift wants to merge 2 commits into
MetaMask:mainfrom
MajorLift:add/performance
Open

Add performance skills: measurement + React/Redux anti-pattern reviews#43
MajorLift wants to merge 2 commits into
MetaMask:mainfrom
MajorLift:add/performance

Conversation

@MajorLift

@MajorLift MajorLift commented Jun 5, 2026

Copy link
Copy Markdown

Adds to the performance domain in two halves: measuring a performance change, and catching at review time the React/Redux anti-patterns that cause regressions.

Why for the extension: the extension is a large React/Redux app where useEffect and selector anti-patterns drive render-cascade regressions. These review skills catch those anti-patterns in an extension PR diff before merge, and are the review-time counterpart to the extension's existing perf-* optimization skills.

Measurement

  • data-analysis — turn raw performance data into a defensible before/after.
  • Knowledge: metrics-pipeline-design; web-vitals (runtime-metrics, production-vs-benchmarks, attribution-import).

Review — the counterpart to the existing perf-* optimization skills

  • effect-anti-pattern-review — catch useEffect anti-patterns in a PR diff (counterpart to perf-hooks-effects).
  • selector-anti-pattern-review — catch Redux selector anti-patterns in a diff (counterpart to perf-state-management), with extension/mobile overlays.
  • Knowledge: render-cascade, effect-anti-patterns, selector-anti-patterns.

CHANGELOG updated; commits GPG-signed.

MajorLift added a commit that referenced this pull request Jun 10, 2026
- WDYR (`wdyr.js`, `useSelector` diff tracking) as the live cascade tracer
- input-unstable vs output-unstable tool selection (`resultEqualityCheck`)
- a live cascade nullifies downstream memo/virtualization/compiler wins
- plain-function selector sweep; span quota guardrail; redux-persist caveat
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant